package com.xinyin.aiqinhaiback.service;

import com.xinyin.aiqinhaiback.common.ResponseResult;
import com.xinyin.aiqinhaiback.model.entity.*;

import javax.servlet.http.HttpServletResponse;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
* @author zz0227
* @description 针对表【information】的数据库操作Service
* @createDate 2025-02-10 10:51:20
*/

public interface InformationService {

	List<SensorInfo> getAllSensors();


	ResponseResult<List<InformationModel>> getThermalData();

	List<Information> getAlldevices();

	ResponseResult<List<Map<String, Object>>> getDeviceInfo(DeviceReq req);

	void addAlarm(Alarm alarm);

	Alarm getAlarmInfo(Alarm alarm);

	void ensureAlarmStatus(Alarm alarm);
	Alarm getOldAlarmInfo(Alarm alarm);

	void updateRenewTime(Alarm oldAlarmInfo);

	ResponseResult<AlarmViewData> getAlarmList();

	void testadd();

	void addDeviceHistoryDataList(List<DeviceHistoryData> deviceHistoryDatalist);

	void addSensorHistoryDataList(List<SensorHistoryData> sensorHistoryDataList);

	ResponseResult getHistoryDevice();

	ResponseResult getHistoryDeviceDetail(HistoryDataQuery historyDataQuery);

	List<DeviceStatus> getDevicesName();

	/**
	 *
	 * @param date
	 * @param deviceId
	 * @param type 0: 设备 1：传感器
	 * @return
	 **/
    List<HistoryResp> getDeviceHistoryDataByDate(LocalDate date,Integer deviceId,Integer type);

    void exportHistoryData(LocalDate startDate, LocalDate endDate, Integer deviceId, Integer type, HttpServletResponse response);
}
